import { createApp } from "vue"
import App from "./App.vue"

// 引入pinia状态管理
import { createPinia } from "pinia"
// 引入piniaPluginPersistedstate，关于这个东西什么作用自己百度下呗
import piniaPluginPersistedstate from "pinia-plugin-persistedstate"
// 引入vue-router路由
import router from "./router"
// 引入tailwindcss CSS框架
import "./style/style.css"
// 引入element-plus UI框架
import ElementPlus from "element-plus"
import "element-plus/dist/index.css"
// 引入element-plus图标，很奇怪他这个需要单独引入，没有包含在ui框架中
import * as ElementPlusIconsVue from "@element-plus/icons-vue"

const app = createApp(App)

// 注意不是app.use(piniaPluginPersistedstate),而是给pinia use
app.use(createPinia().use(piniaPluginPersistedstate))
app.use(router)
app.use(ElementPlus)

// 循环注册element-plus图标
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
    app.component(key, component)
}

app.mount("#app")
